home *** CD-ROM | disk | FTP | other *** search
/ IRIX Base Documentation 2002 November / SGI IRIX Base Documentation 2002 November.iso / usr / share / catman / p_man / catD / vpsema.z / vpsema
Encoding:
Text File  |  2002-10-03  |  3.3 KB  |  67 lines

  1.  
  2.  
  3.  
  4. vvvvppppsssseeeemmmmaaaa((((DDDD3333XXXX))))                                                        vvvvppppsssseeeemmmmaaaa((((DDDD3333XXXX))))
  5.  
  6.  
  7.  
  8. NNNNAAAAMMMMEEEE
  9.      _vvvv_pppp_ssss_eeee_mmmm_aaaa - perform an atomic "V" and "P" semaphore operation on two
  10.      semaphores
  11.  
  12. SSSSYYYYNNNNOOOOPPPPSSSSIIIISSSS
  13.      _####_iiii_nnnn_cccc_llll_uuuu_dddd_eeee _""""_ssss_yyyy_ssss_////_tttt_yyyy_pppp_eeee_ssss_...._hhhh_""""
  14.      _####_iiii_nnnn_cccc_llll_uuuu_dddd_eeee _""""_ssss_yyyy_ssss_////_pppp_aaaa_rrrr_aaaa_mmmm_...._hhhh_""""
  15.      _####_iiii_nnnn_cccc_llll_uuuu_dddd_eeee _""""_ssss_yyyy_ssss_////_ssss_eeee_mmmm_aaaa_...._hhhh_""""
  16.  
  17.      _vvvv_pppp_ssss_eeee_mmmm_aaaa_((((_ssss_eeee_mmmm_aaaa______tttt _****_s_e_m_a_1_p_,,,, _ssss_eeee_mmmm_aaaa______tttt _****_s_e_m_a_2_p_,,,, _iiii_nnnn_tttt _p_r_i_o_r_i_t_y_))))_;;;;
  18.  
  19. DDDDEEEESSSSCCCCRRRRIIIIPPPPTTTTIIIIOOOONNNN
  20.      _vvvv_pppp_ssss_eeee_mmmm_aaaa performs a _vvvv_ssss_eeee_mmmm_aaaa operation with the first semaphore and a _pppp_ssss_eeee_mmmm_aaaa on
  21.      the second semaphore and the given priority. (See _pppp_ssss_eeee_mmmm_aaaa(D3X) and
  22.      _vvvv_ssss_eeee_mmmm_aaaa(D3X) for details on these operations.) _vvvv_pppp_ssss_eeee_mmmm_aaaa is atomic in the
  23.      sense that no other process (on a multiprocessor) can perform a semaphore
  24.      operation on the first semaphore before the _pppp_ssss_eeee_mmmm_aaaa operation has been
  25.      performed on the second semaphore. It effectively "swaps" one semaphore
  26.      for another.
  27.  
  28.      To initialize semaphores, use _iiii_nnnn_iiii_tttt_nnnn_ssss_eeee_mmmm_aaaa(D3X) or _iiii_nnnn_iiii_tttt_nnnn_ssss_eeee_mmmm_aaaa______mmmm_uuuu_tttt_eeee_xxxx(D3X).
  29.  
  30.    RRRReeeettttuuuurrrrnnnn VVVVaaaalllluuuueeeessss
  31.      _vvvv_pppp_ssss_eeee_mmmm_aaaa returns -1 if a signal interrupts a breakable sleep and _P_C_A_T_C_H was
  32.      set; otherwise, it returns 0.
  33.  
  34.    SSSSeeeeeeee AAAAllllssssoooo
  35.      _iiii_nnnn_iiii_tttt_nnnn_ssss_eeee_mmmm_aaaa(D3X), _iiii_nnnn_iiii_tttt_nnnn_ssss_eeee_mmmm_aaaa______mmmm_uuuu_tttt_eeee_xxxx(D3X), _pppp_ssss_eeee_mmmm_aaaa(D3X), _vvvv_ssss_eeee_mmmm_aaaa(D3X),
  36.      _SSSS_LLLL_EEEE_EEEE_PPPP______UUUU_NNNN_LLLL_OOOO_CCCC_KKKK(D3)
  37.  
  38.  
  39.  
  40.  
  41.  
  42.  
  43.  
  44.  
  45.  
  46.  
  47.  
  48.  
  49.  
  50.  
  51.  
  52.  
  53.  
  54.  
  55.  
  56.  
  57.  
  58.  
  59.  
  60.  
  61.  
  62.  
  63.                                                                         PPPPaaaaggggeeee 1111
  64.  
  65.  
  66.  
  67.